#!/bin/bash
# 创建数据目录
MODULE_PATH=/opt/module/svn
DOCKER_NAME=svn

# 删除数据目录及窗器
rm -rf $MODULE_PATH
# 启动容器
# 启动容器
docker run -d \
    --privileged=true \
    -v /etc/localtime:/etc/localtime:ro \
    -e TZ=Asia/Shanghai \
    -p 3690:3690 \
    --name $DOCKER_NAME \
    -v $MODULE_PATH:/var/opt/svn \
    garethflowers/svn-server

#==============================

#==============================
# 创建仓库和账户

# (1)进入容器进行配置

# docker exec -it svn /bin/sh //进入容器
# svnadmin create svn  //创建名称为svn的资源仓库
# (2)资源仓库配置，修改svnserve.conf
# [general]
# anon-access = none             # 匿名用户不可读写，也可设置为只读 read
# auth-access = write            # 授权用户可写
# password-db = passwd           # 密码文件路径，相对于当前目录
# authz-db = authz               # 访问控制文件
# realm = /var/opt/svn/svn       # 认证命名空间，会在认证提示界面显示，并作为凭证缓存的关键字，可以写仓库名称比如svn
# (3)配置账号与密码，修改 passwd文件，格式为“账号 = 密码”
# [users]
# # harry = harryssecret
# # sally = sallyssecret
# admin = 123456
# (4)修改 authz文件
# [groups]
# owner = admin
# [/]               # / 表示所有仓库
# admin = rw        # 用户 admin 在所有仓库拥有读写权限
 
# [svn:/]           # 表示以下用户在仓库 svn 的所有目录有相应权限
# @owner = rw       # 表示 owner 组下的用户拥有读写权限

# (5)退出容器，重启容器,用客户端连接测试 svn://ip/仓库，注意开启防火墙端口3690
